DXF/fr

Historique

Le Drawing Exchange Format (DXF) est un format de données CAO propriétaire développé par Autodesk pour permettre l'échange de fichiers entre son produit phare AutoCAD et d'autres logiciels. Il existe un certain nombre de bonnes bibliothèques logicielles pour lire/écrire le format DXF.

Il existe de nombreuses versions du format DXF. Vous entendrez parler de certaines versions clés, comme la R12 (de 1992) ou la R14 (de 1997, qui comportait des splines). Les versions ultérieures du format DXF comportent des éléments 3D mais ceux-ci sont rarement utilisés ou mis en œuvre. La façon dont vous utilisez DXF pour partager des données CAO entre programmes dépend principalement des limitations et des bogues des lecteurs/importateurs et des rédacteurs/exportateurs correspondants. Ceux-ci sont rarement bien documentés et peuvent être une grande source de frustration.

Si vous éditez des fichiers DXF et que vous souhaitez qu'ils restent quasiment identiques lorsque vous les enregistrez, nous vous recommandons d'utiliser LibreCAD ou QCad car les structures de données internes de ces programmes sont compatibles avec les objets du fichier DXF.

Dans FreeCAD, les lecteurs DXF doivent traduire la géométrie (par exemple, les formes des splines) du fichier DXF dans les représentations internes spécifiques de l'atelier.

Méthodes d'importation du fichier DXF dans FreeCAD

Si vous avez l’intention de vérifier fréquemment les paramètres, nous vous recommandons d’aller dans Edition → Préférences → Importer-Exporter → DXF et de cocher la case "[ ] Afficher cette boîte de dialogue lors de l’importation et de l’exportation".

Vous trouverez plus d'informations sur les pages Draft DXF et FreeCAD et Importation DXF.

Si vous utilisez la géométrie importée pour créer des formes 3D dans l'atelier PartDesign, essayez Sketcher Valider une esquisse après avoir importé le fichier DXF dans une esquisse.

Importateur DXF en C++

Cette implémentation est rapide, mais elle ignore certaines fonctions qu'elle ne reconnaît pas, comme les splines de DXF. Elle ne peut pas également importer la géométrie dans l'atelier Draft que sous forme d'entrées individuelles dans l'arborescence du modèle. Les couleurs de ces entrées peuvent être lues à partir du fichier si vous cochez cette option. Pour plus d'informations, voir ce post dans le forum.

Importateur DXF en Python

Cet importateur doit être téléchargé et installé avant de pouvoir être utilisé. Utilisez l'option "[ ] Autoriser FreeCAD à télécharger et à mettre à jour automatiquement les bibliothèques DXF".

Cet importateur dispose de plus de fonctions (telles que l'implémentation de splines) et a la possibilité de charger les formes DXF dans l'atelier Sketcher. Cependant, il faut savoir que tous les éléments de l'esquisse apparaîtront individuellement une deuxième fois dans l'arborescence du modèle, ce qui peut prêter à confusion. Vous pouvez supprimer tous chacun de ces objets et conserver uniquement l'esquisse (qui apparaît comme deuxième entrée dans la liste des nouveaux éléments).

Malheureusement, l'atelier Sketcher n'implémente pas les couleurs. Toute la géométrie apparaîtra donc au même niveau, ce qui pose problème si le fichier contient de nombreuses lignes de construction. Une solution consiste à ouvrir votre dessin dans LibreCAD et à supprimer toute la géométrie que vous ne souhaitez pas afficher avant d'enregistrer un fichier contenant exactement la géométrie que vous souhaitez charger.

Macros

Gardez un œil sur le forum de FreeCAD ou sur la Liste des macros pour des implémentations alternatives d'importation et de nettoyage DXF au fur et à mesure de leur développement.

Sauvegarder au format DXF

Outre les options du menu Edition → Préférences, l'atelier TechDraw peut également exporter des pages de dessin au format DXF à l’aide de la fonction TechDraw Exporter au format DXF.


Termes et définitions DXF

Blocs anonymes

Lorsque l'on parle de fichiers DXF, plusieurs termes sont utilisés pour décrire les blocs qui sont générés automatiquement par le logiciel de CAO plutôt que par l'utilisateur.

En résumé, "bloc anonyme" est le nom technique, "bloc système" décrit sa fonction et "bloc caché" décrit son comportement typique dans l'interface utilisateur. Pour des raisons pratiques dans le contexte de l'importateur DXF de FreeCAD, ils se réfèrent tous à la même catégorie de blocs.

Classes de blocs anonymes

Les blocs anonymes sont classés en fonction du caractère qui suit l'astérisque initial. Ce préfixe indique l'objectif spécifique du bloc. Les catégories les plus courantes sont les suivantes :

BLOCKs et INSERTs

L'entité BLOCK

Un BLOCK est une collection nommée d'entités géométriques (lignes, arcs, polylignes, etc.) qui sont regroupées pour former une définition d'objet unique. Il peut être considéré comme un modèle.

Un BLOCK :

L'entité INSERT

Une entité INSERT est ce qui place une copie, ou une instance, de la géométrie d'un BLOCK dans l'espace modèle ou l'espace papier du dessin. Il s'agit d'une entité très légère car elle ne contient pas la géométrie elle-même ; elle contient uniquement une référence à une définition de BLOCK et des instructions sur la manière de la placer et de la transformer.

Un INSERT :

Stratégies de placement des BLOCKs

Un fichier DXF sépare la définition d'un composant de son placement.

Il existe deux principales manières d'utilisation des blocks et des inserts :

  1. Flux de travail des modèles et des instances : une seule définition BLOCK est créée, et plusieurs entités INSERT sont utilisées pour placer des instances de cette définition dans le dessin. Il s'agit d'une méthode efficace pour traiter les éléments répétitifs. Par exemple, la géométrie d'une chaise est définie une fois dans un BLOCK puis référencée plusieurs fois par des entités INSERT.
  2. Flux de travail des objets composés : un BLOCK est créé à partir d'une géométrie existante simplement pour regrouper ces objets en une seule unité que l'on peut sélectionner. Dans ce cas, la définition de BLOCK est utilisée par une seule entité INSERT.

L'importateur DXF doit pouvoir faire la distinction entre ces deux cas d'utilisation pour représenter correctement l'intention du dessin original, soit en créant de nombreuses instances liées à un seul objet de base (modèle), soit en créant un seul objet visible (modèle d'objets groupés).